home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 23 / AACD 23.iso / AACD / Games / dynAMIte / Developer / Assembler / dynamite.i
Text File  |  2001-06-24  |  5KB  |  169 lines

  1.     IFND DYNAMITE_I
  2. DYNAMITE_I    SET    1
  3.  
  4. ;    Assembler includes for dynamite bot developers
  5. ;    Created by Ilkka Lehtoranta 3-Jun-2001
  6. ;               updated 10-jun-2001
  7.  
  8. PA_NONE        EQU    0    ; no player
  9. PA_VISI        EQU    1    ; visitor
  10. PA_LOGGEDIN    EQU    2    ; just logged in/after a game
  11. PA_PLAYING    EQU    3    ; is in game (no matter if he's dead)
  12. PA_COUNTDOWN    EQU    4    ; this is of no use. players only have this status if they logged in.
  13. PA_DEAD        EQU    5    ; this is of no use, it's not meant to see if a player is actually dead.
  14.                 ; use player.dead instead. it's only set after successfull login for
  15.                 ; other players
  16. PA_WON        EQU    6    ; a player has this status if he won the last round
  17.  
  18. GAME_CLOSEGAME  EQU 0        ; transitional state to GAME_MENU after connection got closed
  19. GAME_MENU       EQU 1        ; game is in menu eg: login screen
  20. GAME_ENDGAME    EQU 2        ; transitional state to GAME_MENU after effect has been drawn
  21. GAME_EFFECT     EQU 3        ; game draws effect after a match
  22. GAME_COUNTDOWN  EQU 4        ; game is doing countdown
  23. GAME_GAME       EQU 5        ; game is running
  24. GAME_HURRYUP    EQU 6        ; game is running and is in hurry up mode
  25.  
  26. DIR_NONE        EQU    -1
  27. DIR_DOWN        EQU    0
  28. DIR_RIGHT        EQU    1
  29. DIR_LEFT        EQU    2
  30. DIR_UP            EQU    3
  31.  
  32. SPEED_NORMAL        EQU    4
  33. SPEED_SLOW        EQU    3
  34. SPEED_FAST        EQU    6
  35.  
  36. BLOCK_FAKEBLOCK        EQU    -1    ; used for remote/kick bombs which are placed into the map
  37. BLOCK_NOBLOCK        EQU    0    ; empty field
  38. BLOCK_HARDBLOCK        EQU    1    ; non-destroyable block
  39. BLOCK_DESTROYABLE    EQU    2    ; normal block
  40. BLOCK_BOMB        EQU    3    ; normal bomb
  41. BLOCK_BORDERWALL1    EQU    4    ; borderblocks are equal to hardblock
  42. BLOCK_BORDERWALL2    EQU    5
  43. BLOCK_BORDERWALL3    EQU    6
  44. BLOCK_BORDERWALL4    EQU    7
  45. BLOCK_BORDERWALL5    EQU    8
  46. BLOCK_BORDERWALL6    EQU    9
  47. BLOCK_ADDBOMB        EQU    19    ; block which contains a bomb
  48.  
  49. BO_EXPANDFLAME        EQU    1    ; types for bonusgrid
  50. BO_ADDBOMB        EQU    2
  51. BO_FLAMEMAX        EQU    3
  52. BO_BOMBMAX        EQU    4
  53. BO_RANDOMWALL        EQU    5
  54. BO_BOMBS2BLOCKS        EQU    6
  55. BO_DROPALL        EQU    7
  56. BO_EXPLALL        EQU    8
  57. BO_FASTER        EQU    9
  58. BO_SLOWER        EQU    10
  59. BO_SHORTERFUSE        EQU    11
  60. BO_LONGERFUSE        EQU    12
  61. BO_SHORTERFLAME        EQU    13
  62. BO_SWAPCONTROLSLR    EQU    14
  63. BO_FEWERBOMBS        EQU    15
  64. BO_NODROP        EQU    16
  65. BO_SHIELD        EQU    17
  66. BO_STANDSTILL        EQU    18
  67. BO_TELEPORT        EQU    19
  68. BO_REMOTEBOMB        EQU    20
  69. BO_BACK2BASIC        EQU    21
  70. BO_KICKBOMB        EQU    22
  71. BO_SABER        EQU    23
  72. BO_SWAPCONTROLSUD    EQU    24
  73. BO_MAGNET        EQU    25
  74. BO_PHOENIX        EQU    26
  75. BO_DOHURRYUP        EQU    27
  76. BO_INVISIBLE        EQU    28
  77. BO_DUELL        EQU    29
  78. BO_AFTERBURNER        EQU    30
  79.  
  80. BOMB_NORMAL    EQU    0    ; normal bomb
  81. BOMB_GEN    EQU    1    ; predefined bomb (map)
  82. BOMB_REMOTE    EQU    2    ; remote bomb
  83. BOMB_KICK    EQU    3    ; kick bomb
  84.  
  85.  
  86.     STRUCTURE ServerData,0
  87.     STRUCT    sd_ServerName,34
  88.     STRUCT    sd_SysOpName,18
  89.     WORD    sd_MaxSlots
  90.     WORD    sd_MaxObservers
  91.     LABEL    ServerData_SIZEOF
  92.  
  93.     STRUCTURE TempBomb,0
  94.     STRUCT    bmb_Node,MLN_SIZE
  95.     WORD    bmb_BlockX
  96.     WORD    bmb_BlockY
  97.     WORD    bmb_PixelX
  98.     WORD    bmb_PixelY
  99.     WORD    bmb_Fuse        ; >0 bomb is still ticking; =0 bomb is going to explode
  100.     WORD    bmb_Range
  101.     WORD    bmb_Direction        ; kick/remote bombs
  102.     WORD    bmb_OriginX
  103.     WORD    bmb_OriginY
  104.     WORD    bmb_Type        ; is set to one of BOMB_#?
  105.     LABEL    TempBomb_SIZEOF
  106.  
  107.     STRUCTURE Player,0
  108.     WORD    plr_Player
  109.     LONG    plr_Status
  110.     WORD    plr_Dead        ; >0 is alive
  111.     WORD    plr_PixelX        ; xpos + border (24 pixel)
  112.     WORD    plr_PixelY        ; ypos + border (16 pixel)
  113.     WORD    plr_BlockX        ; sijainti
  114.     WORD    plr_BlockY
  115.  
  116.     WORD    plr_BombCount        ; bombs going to explode
  117.     WORD    plr_KickBombs
  118.  
  119.     APTR    plr_BombListHeader    ; -> MLH
  120.     APTR    plr_RemoteBomb        ; -> Bomb
  121.     APTR    plr_KickBomb        ; -> Bomb
  122.  
  123.     WORD    plr_MaxRange        ; 2-15
  124.     WORD    plr_MaxBombs
  125.     WORD    plr_FuseLength
  126.     WORD    plr_Speed        ; player speed; SPEED_NORMAL=4, SPEED_SLOW=3, SPEED_FAST=6
  127.     WORD    plr_SpeedC        ; >0 = player has other speed (SPEED_SLOW, SPEED_FAST)
  128.  
  129.     WORD    plr_SwapHoriz        ; >0 = swaped horizontal controls
  130.     WORD    plr_SwapVert
  131.     WORD    plr_NoDrop
  132.  
  133.     WORD    plr_ShieldCount
  134.     WORD    plr_StandStillCount
  135.     WORD    plr_InvisibleCount
  136.     WORD    plr_AfrerBurnerCount
  137.     WORD    plr_b2bc
  138.  
  139.     WORD    plr_FlameThrowerCount
  140.     WORD    plr_FlameThrowerDir
  141.     WORD    plr_FlameThrowerRange    ; 0-4
  142.  
  143.     WORD    plr_MagnetCount
  144.     WORD    plr_MagnetDir
  145.  
  146.     STRUCT    plr_Name,34
  147.     STRUCT    plr_System,64
  148.     LABEL    Player_SIZEOF
  149.  
  150.     STRUCTURE dynSemaphore,0
  151.     STRUCT    ds_Semaphore,SS_SIZE    ; embedded signalsemaphore
  152.     LONG    ds_OpenCnt
  153.     LONG    ds_Quit
  154.     LONG    ds_GameRunning        ; >0 game running
  155.     LONG    ds_Frames
  156.     LONG    ds_Walk
  157.     LONG    ds_Drop
  158.     LONG    ds_DropKick
  159.     LONG    ds_PlayerNum        ; 0-15
  160.     APTR    ds_Players        ; array to players (0-15)
  161.     LONG    ds_MapWidth
  162.     LONG    ds_MapHeight
  163.     APTR    ds_Grid            ; array ptr to the actual map (29 entries max). each entry contains 1 line of the map without powerups
  164.     APTR    ds_BonusGrid
  165.     STRUCT    ds_AddBubble,10
  166.     APTR    ds_ServerData        ; see serverdata for details
  167.     LABEL    dynSemaphore_SIZEOF
  168.  
  169.     ENDC    ; DYNAMITE_I